package cn.fl.institution.transform.base;

import java.util.ArrayList;
import java.util.List;

import cn.cmm.base.framework.utils.CollectionUtils;
import cn.fl.institution.dto.PrjInsToOurComLogDTO;
import cn.fl.institution.vo.PrjInsToOurComLogVO;


 /**
 * @Description: 项目转我司记录日志表 转换器
 * @Description: VO是客户端传递数据到服务端进行转换的数据 
 * @Description: VO转换数据变成DTO传递到服务端 
 * @Description: VO不能在服务端出现
 */
public class BasePrjInsToOurComLogVOTransform {


	/**
	 * DTO 转  VO
	 * @param po PrjInsToOurComLogDTO
	 * @return PrjInsToOurComLogVO
	 */
	public static PrjInsToOurComLogVO baseToVO(PrjInsToOurComLogDTO dto) {
		PrjInsToOurComLogVO  vo = null;
		if (dto != null) { 
			vo = new PrjInsToOurComLogVO();
			vo.setId(dto.getId());
			vo.setPrjId(dto.getPrjId());//项目ID
			vo.setInsCode(dto.getInsCode());//资方编号
			vo.setLsCntNo(dto.getLsCntNo());//合同号
			vo.setInsPaySchId(dto.getInsPaySchId());//资方支付表ID
			vo.setPaySchId(dto.getPaySchId());//我司支付表表ID
			vo.setPaySchNo(dto.getPaySchNo());//我司支付表编号
			vo.setToOurComTime(dto.getToOurComTime());//转我司时间
			vo.setLsDt(dto.getLsDt());//我司支付表起租日
			vo.setCstTypCd(dto.getCstTypCd());//客户类型(CST0001)(1：自然人，2：法人)
			vo.setIsSubmitCredit(dto.getIsSubmitCredit());//是否上报征信（1：是，0：否）
			vo.setIsSolved(dto.getIsSolved());//是否已处理(上报征信)
			vo.setToOurComTyp(dto.getToOurComTyp());//转我司方式(PRJ0201)
			vo.setRedmId(dto.getRedmId());//赎回ID
			vo.setBfrTomStatus(dto.getBfrTomStatus());//转我司前节点状态（PRJ0202）
			vo.setIsDel(dto.getIsDel());//是否删除（1：是，0：否）
			vo.setCrtUsrNm(dto.getCrtUsrNm());//创建者名称

			vo.setCrtTm(dto.getCrtTm());//创建时间
			vo.setCrtUsrId(dto.getCrtUsrId());//创建人
			vo.setMdfTm(dto.getMdfTm());//修改时间
			vo.setMdfUsrId(dto.getMdfUsrId());//修改人
		}
		return vo;
	}

	/**
	 * VO 转 DTO
	 * @param dto PrjInsToOurComLogVO
	 * @return PrjInsToOurComLogDTO
	 */
	public static PrjInsToOurComLogDTO baseToDTO(PrjInsToOurComLogVO vo) {
		PrjInsToOurComLogDTO dto = null;
		if (vo != null) {
			dto = new PrjInsToOurComLogDTO();
			dto.setId(vo.getId());
			dto.setPrjId(vo.getPrjId());//项目ID
			dto.setInsCode(vo.getInsCode());//资方编号
			dto.setLsCntNo(vo.getLsCntNo());//合同号
			dto.setInsPaySchId(vo.getInsPaySchId());//资方支付表ID
			dto.setPaySchId(vo.getPaySchId());//我司支付表表ID
			dto.setPaySchNo(vo.getPaySchNo());//我司支付表编号
			dto.setToOurComTime(vo.getToOurComTime());//转我司时间
			dto.setLsDt(vo.getLsDt());//我司支付表起租日
			dto.setCstTypCd(vo.getCstTypCd());//客户类型(CST0001)(1：自然人，2：法人)
			dto.setIsSubmitCredit(vo.getIsSubmitCredit());//是否上报征信（1：是，0：否）
			dto.setIsSolved(vo.getIsSolved());//是否已处理(上报征信)
			dto.setToOurComTyp(vo.getToOurComTyp());//转我司方式(PRJ0201)
			dto.setRedmId(vo.getRedmId());//赎回ID
			dto.setBfrTomStatus(vo.getBfrTomStatus());//转我司前节点状态（PRJ0202）
			dto.setIsDel(vo.getIsDel());//是否删除（1：是，0：否）
			dto.setCrtUsrNm(vo.getCrtUsrNm());//创建者名称

			dto.setCrtTm(vo.getCrtTm());//创建时间
			dto.setCrtUsrId(vo.getCrtUsrId());//创建人
			dto.setMdfTm(vo.getMdfTm());//修改时间
			dto.setMdfUsrId(vo.getMdfUsrId());//修改人
		}
		return dto;
	}

	 /**
	  * VO集合 转 DTO集合
	  *
	  * @param list List<PrjInsToOurComLogVO>
	  * @return List<PrjInsToOurComLogDTO>
	  */
	 public static List<PrjInsToOurComLogDTO> toDTOList(List<PrjInsToOurComLogVO> list) {
		 List<PrjInsToOurComLogDTO> dtoList = new ArrayList<>();
		 if (CollectionUtils.isNotEmpty(list)) {
			 for (PrjInsToOurComLogVO vo : list) {
				 dtoList.add(baseToDTO(vo));
			 }
		 }
		 return dtoList;
	 }

	 /**
	  * DTO集合 转 VO集合
	  *
	  * @param list List<PrjInsToOurComLogDTO>
	  * @return List<PrjInsToOurComLogVO>
	  */
	 public static List<PrjInsToOurComLogVO> toVOList(List<PrjInsToOurComLogDTO> list) {
		 List<PrjInsToOurComLogVO> voList = new ArrayList<>();
		 if (CollectionUtils.isNotEmpty(list)) {
			 for (PrjInsToOurComLogDTO dto : list) {
				 voList.add(baseToVO(dto));
			 }
		 }
		 return voList;
	 }
}
